Determining respiration rate from a video of a subject breathing

ABSTRACT

What is disclosed is a system and method for determining a respiration rate from a video of a subject breathing. One embodiment of the present method involves the following. A video is received of a subject breathing which comprises a first portion of N image frames, and a second portion of M image frames, N+M=T and N≧10 seconds of video. For each image frame of the first portion, flow vectors F t  are determined for each (x,y) pixel location. A correlated flow field V is then calculated for the first portion of video. For each image frame of the second portion, flow vectors F t (x,y) are determined for each (x,y) pixel location and a projection of F t  along V is calculated to obtain a velocity of thoracoabdominal motion in the direction of V. The velocity is integrated to obtain an integrated signal. Respiration rate is determined from the integrated signal.

TECHNICAL FIELD

The present invention is directed to systems and methods for determininga respiration rate from a video of a subject breathing.

BACKGROUND

Respiration rate refers to the number of breathing cycles per minute. Itis one of the important vital signs and frequently measured during thediagnosis and treatment of many pulmonary dysfunctions. Typically, inhealthy adults the respiration rate ranges from 5 to 35 breaths perminute. The deviation of respiration rate from this usual range isindicative of pulmonary diseases like asthma, chronic obstructivepulmonary disease, tuberculosis, respiratory-tract infection, etc.Further, abnormally high respiration rate is an indication of pneumoniain children or tissue hypoxia associated to sleep apnea. Such pulmonarydiseases cause about 18% of human deaths in the world. Oftenirregularities in respiration rate are also indicative of cardiacmalfunctioning. Respiration rate is routinely measured for clinicaldiagnosis in many primary health care centers. Besides, measurement ofrespiration rate in an intensive care unit (ICU) directly ascertainswhether the patient is breathing or not. Moreover, measurement ofrespiration rate can also be used for the analysis of human emotionssuch as anger or stress.

There exist a number of techniques for respiration rate measurement,including spirometry, impedance pneumography and plethysmography.However, these methods employ the use of contact based probes in theforms of leads or straps. Such contact-based methods are oftenprohibitive in many situations. They not only cause discomfort orirritation, particularly to sensitive skins, often patients change theirnormal breathing pattern during the monitoring with such contact-basedmethods. It can also be difficult to use such methods in neonates ICU orhome monitoring. Further, during gated radiography it is not possible touse contact based measurements as they directly interfere with theradiography. Due to these reasons, non-contact RR measurement isbecoming an emerging and immensely important problem in bio-medicalengineering community.

Accordingly, what is needed in this art are sophisticated systems andmethods for determining a respiration rate from a video of a subjectbreathing.

BRIEF SUMMARY

What is disclosed is a system and method for determining a respirationrate from a video of a subject breathing. One embodiment of the presentmethod involves receiving a video of a subject breathing. The receivedvideo comprises at least T time-sequential image frames captured of anarea of the subject where a signal corresponding to respiratory functioncan be registered by at least one imaging channel of an imaging deviceused to capture that video. The video has a first portion comprising atleast 10 seconds of video and a second portion comprising M imageframes. A flow vector F_(t) is then determined for each (x,y) pixellocation in each image frame I_(t) of the first portion of the video.Once the flow vectors have been determined for each pixel location, acorrelated flow field V is then determined for the entire first portionof the video. The correlated flow field captures how the individual flowvectors in each image frame are correlated to each other. For each imageframe of the second portion of the video, a flow vector F_(t) isdetermined for each respective (x,y) pixel location and a projection ofF_(t) is calculated in a direction of the correlated flow field V toobtain a velocity vel_(t) on a per-frame basis. The velocities are thenintegrated over the duration of the second portion of the video toobtain an integrated signal corresponding to thoracoabdominal movement.A respiration rate is determined for the subject from the integratedsignal over the timeframe of the second portion of the video, inseconds.

Features and advantages of the above-described method will becomereadily apparent from the following detailed description andaccompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

The foregoing and other features and advantages of the subject matterdisclosed herein will be made apparent from the following detaileddescription taken in conjunction with the accompanying drawings, inwhich:

FIG. 1 shows an anterior view of an adult human as well as a posteriorview wherein various areas of the subject where a signal correspondingto respiratory function can be obtained;

FIG. 2 shows an example video imaging device capturing time-sequentialimage frames of an area of the subject of FIG. 1;

FIG. 3 is an image shown with flow vectors having been computed in awindow of pixel locations;

FIG. 4 is a flow diagram which illustrates one example embodiment of thepresent method for determining a respiration rate from a video of asubject while breathing;

FIG. 5 is a continuation of the flow diagram of FIG. 4 with flowprocessing continuing with respect to node A; and

FIG. 6 is a functional block diagram of one example image processingsystem for processing a video of a subject in accordance with theembodiment described with respect to the flow diagrams of FIGS. 4 and 5.

DETAILED DESCRIPTION

What is disclosed is a system and method for determining a respirationrate from a video of a subject breathing.

Non-Limiting Definitions

“Respiratory function” is a process of inspiration and expirationfollowed by a brief post-expiratory pause.

A “subject” refers to a living being. Although the term “person” or“patient” may be used throughout this disclosure, it should beappreciated that the subject may be something other than a human suchas, for example, a primate. Therefore, the use of such terms is not tobe viewed as limiting the scope of the appended claims strictly tohumans.

A “video”, as generally understood, is a plurality of time-sequentialimage frames. The video is captured of an area of the subject where asignal corresponding to respiratory function can be registered by atleast one imaging channel of an imaging device used to capture thatvideo. The video comprises a first portion and second portion. The firstportion of the video is of at least 10 seconds in duration for a totalof N image frames. The second portion of the video has M image frames,where N+M=T. The second portion of video can be any duration such as afew seconds, and may even comprise the frames of the first portion ofthe video. FIG. 1 shows an frontal view 101 of an adult human as well asa rear view 102. Example areas of the subject's body where a signalcorresponding to respiratory function can be obtained from a video areshown at 103, 104, and 105. A signal corresponding to respiratoryfunction can also be obtained from a lateral (side) view of the thoraciccage and abdomen. The appending claims should not be limited toobtaining a respiratory signal only from the body areas shown by way ofexample in FIG. 1. Moreover, the subject may be wearing clothing orcovered by a sheet during video acquisition. Pixels in each of the imageframes may be grouped, averaged, or pre-processed as desired to obtainmore accurate measurements. Image frames may be pre-processed as neededto compensate for motion induced blurring, imaging blur, noise and otheranomalies. Image frames may be deleted from a video as needed todecrease the frame rate. The video may also contain other componentssuch as audio, time, date, reference signals, frame rate, and the like.The video may be processed to compensate for motion induced blur,imaging blur, slow illuminant variation or to enhance contrast orbrightness. The video is captured by a video imaging device.

A “video imaging device” or simply “imaging device”, refers to asingle-channel or multi-channel camera for capturing or otherwiseacquiring temporally successive images. Imaging devices for acquiringvideo include a color video camera, a monochrome video camera, aninfrared video camera, a multispectral video imaging device, ahyperspectral video camera, and a hybrid device comprising a combinationhereof. FIG. 2 shows an example video imaging device 200 capturingtime-sequential image frames (individually at 201) of an area 203 of thesubject of FIG. 1. The video imaging device has a communication element202 (shown as an antenna) which effectuates a communication with aremote device such as a workstation over a wireless network where theimage frames are received for processing in accordance with the methodsdisclosed herein. The video imaging device has one or more lens whichfocus received reflected light on to photodetectors which recordintensity values at pixel locations along a multi-dimensional grid. Thereceived light is spatially resolved to form an image. Video imagingdevices comprising standard video equipment and those with specializedimaging sensors are available from a wide array of vendors in variousstreams of commerce. The video imaging device may incorporate memory, astorage device, and a video analysis module comprising one or moremicroprocessors for executing machine readable program instructions forprocessing the received video in accordance with the teachings hereof.Such a video analysis module may comprise, in whole or in part, asoftware application working alone or in conjunction with one or morehardware resources. The captured video is received for processing.

“Receiving a video” is intended to be widely construed and includesretrieving, capturing, acquiring, or otherwise obtaining video imageframes for processing. The video can be received or retrieved from aremote device over a network, or from a media such as a CDROM or DVD.The video can be received directly from a memory or storage device ofthe imaging device used to capture or acquire the video. Video may bedownloaded from a web-based system or application which makes videoavailable for processing. Video can also be received from an applicationsuch as those which are available for handheld cellular devices orhandheld computing device such as an iPad or Tablet-PC. The receivedvideo is processed to obtain a signal which corresponds tothoracoabdominal movement.

Introduction to Optical Flow

The concept of optical flow was introduced by James J. Gibson in the1940's to help understand and describe the role visual stimulus plays inthe perception of movement in the mind of an observer. Gibson postulatedthat sequences of ordered images allow the estimation of motion aseither instantaneous image velocities or discrete image displacements. Atutorial is disclosed in: “Handbook of Mathematical Models in ComputerVision”, Paragios et al., Springer (2006), ISBN-13: 978-0387263717,[See, chapter: “Optical Flow Estimation”, by David J. Fleet and YairWeiss, which provides an introduction to gradient based optical flowanalysis].

Optical flow analysis tries to calculate motion between two image frameswhich are taken at times t and t+Δt at various pixel locations common toboth images or at locations of groups of pixels common to both images.These methods are often referred to as differential methods since theyare based on local Taylor series approximations, i.e., they use partialderivatives with respect to the spatial and temporal coordinates.Generally, for a 2D+t dimensional case (3D or n-D cases are similar)values in the image at location (x,y) having intensity I_(t)(x,y) willhave moved an amount given by Δx, Δy and Δt between two image frames,such that:

I _(t)(x,y)=I(x+Δx,y+Δy,t+Δt)   (1)

Assuming the movement is small, the respective Taylor series can begiven as:

$\begin{matrix}{{I\left( {{x + {\Delta \; x}},{y + {\Delta \; y}},{t + {\Delta \; t}}} \right)} = {{I\left( {x,y,t} \right)} + {\frac{\partial I}{\partial x}\Delta \; x} + {\frac{\partial I}{\partial y}\Delta \; y} + {\frac{\partial I}{\partial t}\Delta \; t} + \ldots}} & (2)\end{matrix}$

From Eqs. (1) and (2), it follows that:

$\begin{matrix}{{{\frac{\partial I}{\partial x}\Delta \; x} + {\frac{\partial I}{\partial y}\Delta \; y} + {\frac{\partial I}{\partial t}\Delta \; t}} = 0} & (3)\end{matrix}$

which results in:

$\begin{matrix}{{{\frac{\partial I}{\partial x}V_{x}} + {\frac{\partial I}{\partial y}V_{y}} + {\frac{\partial I}{\partial t}V_{t}}} = 0} & (4)\end{matrix}$

where V_(x), V_(y) are the x and y components of the optical flow of

${{I\left( {x,y,t} \right)}\mspace{14mu} {and}\mspace{14mu} \frac{\partial I}{\partial x}},{\frac{\partial I}{\partial y}\mspace{14mu} {and}\mspace{14mu} \frac{\partial I}{\partial t}}$

are the derivatives of the image at (x,y, t) in the correspondingdirections.

Given the above, the following can be derived:

∇I ^(T) ·{right arrow over (V)}=−I _(t)   (5)

Eq. (5) has two unknowns. This is known as the aperture problem ofoptical flow. To find the optical flow, another set of equations isneeded, given by some additional constraint. All optical flow methodsintroduce additional conditions for estimating the actual flow. Methodsfor optical flow analysis include: the Lucas-Kanade Method as disclosedin: “An Iterative Image Registration Technique with an Application toStereo Vision”, Bruce D. Lucas and Takeo Kanade, Proc. of ImagingUnderstanding Workshop, pp. 121-130, (1981), the Horn-Schunck Method asdisclosed in: “Determining Optical Flow”, Berthold K. P. Horn and BrianG. Schunck, Vol 17, pp 185-203, Artificial Intelligence, (1981), and theBlack-Jepson Method as disclosed in: “Computation of Optical Flow”, S.S. Beauchemin, J. L. Barron, ACM Computing Surveys, Vol. 27, No. 3,(September 1995). It should also be appreciated that discreteoptimization methods can also be employed. Other methods are discussedin: “A Database and Evaluation Methodology for Optical Flow”, SimonBaker, Daniel Scharstein, J. P. Lewis, Stefan Roth, Michael J. Black,Richard Szeliski, International Journal of Computer Vision, Vol. 92, pp.1-31 (2011). It should be understood that the optical flow methodslisted herein are representative and not exhaustive. Therefore the scopeof the appended claims should not be limited to only these techniques.

A result of having performed optical flow analysis on an image or awindow within an image produces an array of optical flow vectors. FIG. 3shows an image frame 300 with a plurality of flow vectors generatedwithin window 301. It should be understood that FIG. 3 is for discussionpurposes. As such, the scope of the appended claims is not intended tobe limited only to flow vectors generated in the windows shown.Moreover, because flow vectors are being generated for each individualpixel location, there would be too many vectors to show on a given imagewith even a moderate resolution. Thus, it should be appreciated that theflow vectors of FIG. 3 are illustrative for explanatory purposes.

An “optical flow vector”, or simply “flow vector”, is a vector as isgenerally understood. A vector has a directional component thatcorresponds to a temporal variation in intensity, and a magnitude thatcorresponds to an amount of the variation. A flow vector can bedetermined as follows.

Calculate, for each image frame I_(t) of a first portion of the video,where t=1 to N, an image gradient G_(t) at each (x,y) pixel location asfollows:

$\begin{matrix}{{G_{t}\left( {x,y} \right)} = \begin{bmatrix}{{I_{t}\left( {{x + 1},y} \right)} - {I_{t}\left( {x,y} \right)}} \\{{I_{t}\left( {x,{y + 1}} \right)} - {I_{t}\left( {x,y} \right)}}\end{bmatrix}} & (6)\end{matrix}$

where I_(t)(x,y) represents values at respective (x,y) pixel locationsin the t^(th) image frame

Calculate, for each image frame I_(t) of the first portion of the video,where t=1 to N, a difference D_(t) at each pixel location (x,y) betweenimage frames I_(t) and I_(t−1) as follows:

D _(t)(x,y)=I _(t)(x,y)−I_(t−1)(x,y)   (7)

where I_(t)(x,y) represents values at respective (x,y) pixel locationsin the t^(th) image frame, and I_(t−1)(x,y) represents values atrespective (x,y) pixel locations in the (t−1)^(th) image frame.

Calculate, for each image frame I_(t) of the first portion of the video,where t=1 to N, a flow vector F_(t) at each pixel location (x,y) along adirection of the gradient, as follows:

$\begin{matrix}{{F_{t}\left( {x,y} \right)} = {\frac{{D_{t}\left( {x,y} \right)}{G_{t}\left( {x,y} \right)}}{{{G_{t}\left( {x,y} \right)}}^{2}}.}} & (8)\end{matrix}$

A “correlated flow field V” captures how the flow vectors at differentlocations in the image frames are correlated to each other. Inaccordance herewith, a correlated flow field is determined for the firstportion of the video. In one embodiment, the correlated flow field forthe first portion of the video is given by:

$\begin{matrix}{V = {\underset{{U{({x,y})}} \in {W{({x,y})}}}{\arg \; \max}{\sum\limits_{t = 1}^{N}\left( {\sum\limits_{x,y}{{F_{t}\left( {x,y} \right)} \cdot {U\left( {x,y} \right)}}} \right)^{2}}}} & (9)\end{matrix}$

where W(x,y) is a m×n×2 matrix with unit Frobenius norm, m is a numberof rows of F_(t), and n is a number of columns of F_(t).

“Velocity vel_(t)” is a projection of F_(t) in a direction of thecorrelated flow field V for the t^(th) image frame. The velocity iscomputed for each image frame in the second portion of the video. In oneembodiment, the velocity for the t^(th) image frame is given by:

$\begin{matrix}{{vel}_{t} = {\sum\limits_{({x,y})}{\left( {{F_{t}\left( {x,y} \right)} \cdot V} \right).}}} & (10)\end{matrix}$

An “integrated signal” is obtained by integrating the velocities overthe image frames of the second portion of the video. The integratedsignal corresponds to thoracoabdominal movement.

“Thoracoabdominal movement” of the thoracic cage and abdominal wall dueto the expansion and retraction during patient respiration. Althoughseparate systems, movement of the chest cage and abdominal wall duringrespiration is relatively synchronous in healthy individuals. Asynchronyin thoracoabdominal movement can be a sign of respiratory dysfunction.

“Respiration rate” refers to the number of breaths (inspiration andexpiration) that the subject takes over a period of time. A respirationrate is determined for the subject by a number of cycles in theintegrated signal that occur over the timeframe of the second portion ofthe video, typically in number of breaths per minute. The respirationrate can be communicated to a storage device, a display device, and/or aremote device over a network.

It should be appreciated that the steps of “receiving”, “determining”,“computing”, “calculating”, “integrating”, “performing” and the like, asused herein, include the application of various mathematical operationsapplied to data according to any specific context or for any specificpurpose. It should be appreciated that such steps may be facilitated orotherwise effectuated by a processor executing machine readable programinstructions retrieved from a memory or storage device.

Flow Diagram of One Embodiment

Reference is now being made to the flow diagram of FIG. 4 whichillustrates one example embodiment of the present method for determininga respiration rate from a video of a subject while breathing. Flowprocessing begins at step 400 and immediately proceeds to step 402.

At step 402, receive a video of a subject breathing wherein the video iscaptured of an area of the subject where a signal corresponding torespiratory function can be registered by at least one imaging channelof an imaging device used to capture that video. The video comprises Ttime-sequential image frames with a first portion comprising at least 10seconds of video for a total of N image frames, and a second portioncomprising M image frames, where N+M=T.

At step 404, select an image frame of the first portion of the video forprocessing. The image frames are selected from 1 to N and can beselected manually or automatically.

At step 406, determine a flow vector for each pixel location in theselected image frame.

At step 408, a determination is made whether more image frames remain tobe processed. If so, then processing repeats with respect to step 404wherein a next image frame of the first portion of the video isselected. Processing repeats until flow vectors have been determined forall image frames in the first portion of the video.

At step 410, determine a correlated flow field which captures how theindividual flow vectors in each image frame of the first portion of thevideo are correlated to each other.

Reference is now being made to the flow diagram of FIG. 5 which is acontinuation of the flow diagram of FIG. 4 with flow processingcontinuing with respect to node A.

At step 512, select an image frame of the second portion of the videofor processing. The image frames are selected from 1 to M and can beselected manually or automatically.

At step 514, determine a flow vector for each pixel location in thisimage frame.

At step 516, determine a velocity for the selected image frame.

At step 518, a determination is made whether more image frames remain tobe processed. If so, then processing repeats with respect to step 512wherein a next image frame of the second portion of the video isselected. Processing repeats until all image frames in the secondportion of the video have been processed accordingly.

At step 520, integrate the velocities over the image frames of thesecond portion of the video to obtain an integrated signal whichcorresponds to thoracoabdominal movement.

At step 522, determine a respiration rate for the subject from theintegrated signal. In this embodiment further processing stops. Inanother embodiment, the respiration rate is analyzed to determinewhether the patient has a respiratory dysfunction or is in respiratorydistress. If so then an alert is generated. The alert may take the formof a message displayed on a display device or a sound activated at, forexample, a nurse's station. The alert may take the form of a colored orblinking light which provides a visible indication that an alertcondition exists. The alert can be a text, audio, and/or video message.The alert may be communicated to one or more remote devices over a wiredor wireless network. The alert may be sent directly to a handheldwireless cellular device of a medical professional.

It should be understood that the flow diagrams depicted herein areillustrative. One or more of the operations illustrated in the flowdiagrams may be performed in a differing order. Other operations may beadded, modified, enhanced, or consolidated. Variations thereof areintended to fall within the scope of the appended claims. All orportions of the flow diagrams may be implemented partially or fully inhardware in conjunction with machine readable/executable programinstructions.

Block Diagram of Image Processing System

Reference is now being made to FIG. 6 which shows a block diagram of oneexample image processing system for processing a video of a subject inaccordance with the embodiment described with respect to the flowdiagrams of FIGS. 4 and 5.

Video Receiver 601 wirelessly receives the video of the subject viaantenna 602 having been transmitted thereto from the imaging device 200of FIG. 2 using communication element 202. Flow Vector Generator 603determines a flow vector for each pixel location in each image frame ofthe first portion of the received video. Flow Field Calculator 604determines a correlated flow field which captures how the individualflow vectors in each image frame of the first portion of the video arecorrelated to each other. The correlated flow field is stored to storagedevice 605. Flow Vector Generator 606 determines a flow vector for eachpixel location in each image frame of the second portion of the receivedvideo. It should be appreciated that, in other embodiments, Flow VectorGenerators 603 and 606 comprise a single unit or processing module.Velocity Module 607 receives the flow vectors on a per-frame basis,retrieves the correlated flow field from storage device 605, andproceeds to determine a velocity for each image frame of the secondportion of the video with the velocity being a projection of the flowvectors in a direction of the correlated flow field V for each of theimage frames. Integrator Module 608 receives the velocities on aper-frame basis and proceeds to integrate the velocities over the imageframes of the second portion of the video to obtain an integrated signal609 which corresponds to thoracoabdominal movement. Respiration RateModule 610 receives the integrated signal and proceeds to determine arespiration rate for the subject. Alert Generator 611 initiates an alertsignal via antenna 612 in response to the respiration rate not beingwithin acceptable parameters. Central Processing Unit (CPU) 613retrieves machine readable program instructions from a memory 614 and isprovided to facilitate the functionality of any of the modules of thesystem 600. CPU 613, operating alone or in conjunction with otherprocessors, may be configured to assist or otherwise perform thefunctionality of any of the modules or processing units of the system600, as well as facilitating communication between the system 600 andthe workstation 620.

Workstation 620 is shown generally comprising a computer case whichhouses various components such as a motherboard with a microprocessorand memory, a network card, a video card, a hard drive capable ofreading/writing to machine readable media 622 such as a floppy disk,optical disk, CD-ROM, DVD, magnetic tape, and the like, and othersoftware and hardware as is needed to perform the functionality of acomputer workstation. The workstation includes a display device 623,such as a CRT, LCD, or touchscreen display, for displaying information,image frames, vector magnitudes, vector intensities, optical flowvectors, computed values, patient medical information, and the like,which are produced or are otherwise generated by any of the modules orprocessing units of the video processing system 600. A user can view anysuch information and make a selection from various menu optionsdisplayed thereon. Keyboard 624 and mouse 625 effectuate a user input orselection. It should be appreciated that the workstation has anoperating system and other specialized software configured to displayalphanumeric values, menus, scroll bars, dials, slideable bars,pull-down options, selectable buttons, and the like, for entering,selecting, modifying, and accepting information needed for performingvarious aspects of the methods disclosed herein.

A user may use the workstation to identify a set of image frames ofinterest, set various parameters, and other facilitate the functionalityof any of the modules or processing units of the video processing system600. A user or technician may utilize the workstation to select imageframes for processing, modify, add or delete flow vectors or move awindow around an image or re-size a window in an image as is deemedappropriate. The user may adjust various parameters being utilized,group pixels together, or dynamically adjust in real-time, system orsettings of any device used to capture the video images.

User inputs and selections may be stored/retrieved to/from any of thestorage devices 605, 622 and 626. Default settings and initialparameters can be retrieved from any of the storage devices. The system600 may communicate to one or more remote devices over network 627,utilizing a wired, wireless, or cellular communication protocol.Although shown as a desktop computer, it should be appreciated that theworkstation can be a laptop, mainframe, tablet, notebook, smartphone, ora special purpose computer such as an ASIC, or the like. The embodimentof the workstation is illustrative and may include other functionalityknown in the arts.

The workstation implements a database in storage device 626 whereinrecords are stored, manipulated, and retrieved in response to a query.Such records, in various embodiments, take the form of patient medicalhistory stored in association with information identifying the patient(collectively at 628). It should be appreciated that database 626 may bethe same as storage device 605 or, if separate devices, may contain someor all of the information contained in either device. Although thedatabase is shown as an external device, the database may be internal tothe workstation mounted, for example, on a hard drive.

Any of the components of the workstation may be placed in communicationwith any of the modules of system 600 or any devices placed incommunication therewith. Moreover, any of the modules of system 600 canbe placed in communication with storage device 626 and/or computerreadable media 622 and may store/retrieve therefrom data, variables,records, parameters, functions, and/or machine readable/executableprogram instructions, as needed to perform their intended functionality.Further, any of the modules or processing units of the system 600 may beplaced in communication with one or more remote devices over network627. It should be appreciated that some or all of the functionalityperformed by any of the modules or processing units of system 600 can beperformed, in whole or in part, by the workstation. The embodiment shownis illustrative and should not be viewed as limiting the scope of theappended claims strictly to that configuration. Various modules maydesignate one or more components which may, in turn, comprise softwareand/or hardware designed to perform the intended function.

The teachings hereof can be implemented in hardware or software usingany known or later developed systems, structures, devices, and/orsoftware by those skilled in the applicable arts without undueexperimentation from the functional description provided herein with ageneral knowledge of the relevant arts. One or more aspects of themethods described herein are intended to be incorporated in an articleof manufacture. The article of manufacture may be shipped, sold, leased,or otherwise provided separately either alone or as part of a productsuite or a service.

The above-disclosed and other features and functions, or alternativesthereof, may be desirably combined into other different systems orapplications. Presently unforeseen or unanticipated alternatives,modifications, variations, or improvements may become apparent and/orsubsequently made by those skilled in this art which are also intendedto be encompassed by the following claims. The teachings of anypublications referenced herein are hereby incorporated in their entiretyby reference thereto.

What is claimed is:
 1. A computer implemented method for determining arespiration rate from a video of a subject while breathing, the methodcomprising: receiving T time-sequential image frames of a video of asubject breathing, the video being captured of an area of the subjectwhere a signal corresponding to respiratory function can be registeredby at least one imaging channel of an imaging device used to capturethat video, the video comprising a first portion of at least 10 secondsof video for a total of N image frames, and a second portion of M imageframes, where N+M=T; for each image frame I_(t), where t=1 to N,determining a flow vector F_(t)(x,y) for each (x,y) pixel location;determining a correlated flow field V which captures how the individualflow vectors in each image frame are correlated to each other; for eachimage frame I_(t), where t=1 to M: determining a flow vector F_(t)(x,y)at each (x,y) pixel location; and determining a velocity vel_(t) for thet^(th) image frame; integrating the velocities over the image frames ofthe second portion of the video to obtain an integrated signalcorresponding to thoracoabdominal movement; and determining arespiration rate for the subject from the integrated signal.
 2. Thecomputer implemented method of claim 1, wherein determining a flowvector F_(t) at each (x,y) pixel location in the t^(th) image framecomprises:${F_{t}\left( {x,y} \right)} = \frac{{D_{t}\left( {x,y} \right)}{G_{t}\left( {x,y} \right)}}{{{G_{t}\left( {x,y} \right)}}^{2}}$where G_(t)(x,y) is a gradient determined at respective (x,y) pixellocations, and D_(t)(x,y) is a difference determined at respective (x,y)pixel locations.
 3. The computer implemented method of claim 2, whereindetermining a gradient G_(t) at respective (x,y) pixel locationscomprises: ${G_{t}\left( {x,y} \right)} = \begin{bmatrix}{{I_{t}\left( {{x + 1},y} \right)} - {I_{t}\left( {x,y} \right)}} \\{{I_{t}\left( {x,{y + 1}} \right)} - {I_{t}\left( {x,y} \right)}}\end{bmatrix}$ where I_(t)(x,y) represents values at respective (x,y)pixel locations in the t^(th) image frame.
 4. The computer implementedmethod of claim 2, wherein determining a difference D_(t) at respective(x,y) pixel locations comprises:D _(t)(x,y)=I _(t)(x,y)−I _(t−1)(x,y) where I_(t)(x,y) represents valuesat respective (x,y) pixel locations in the t^(th) image frame, andI_(t−1)(x,y) represents values at respective (x,y) pixel locations inthe (t−1)th image frame.
 5. The computer implemented method of claim 1,wherein determining a correlated flow field V for the first portion ofthe video comprises:$V = {\underset{{U{({x,y})}} \in {W{({x,y})}}}{\arg \; \max}{\sum\limits_{t = 1}^{N}\left( {\sum\limits_{x,y}{{F_{t}\left( {x,y} \right)} \cdot {U\left( {x,y} \right)}}} \right)^{2}}}$where W(x,y) is a m×n×2 matrix with unit Frobenius norm, m is a numberof rows of F_(t), and n is a number of columns of F_(t).
 6. The computerimplemented method of claim 1, wherein the velocity vel_(t) is aprojection of F_(t) in a direction of the correlated flow field V forthe t^(th) image frame, and comprises:${vel}_{t} = {\sum\limits_{({x,y})}{\left( {{F_{t}\left( {x,y} \right)} \cdot V} \right).}}$7. The computer implemented method of claim 1, wherein the respirationrate is determined by a number of cycles in the integrated signal overthe timeframe of the second portion of the video.
 8. The computerimplemented method of claim 1, wherein the video is a streaming videoand the respiration rate is determined in real-time.
 9. The computerimplemented method of claim 1, further comprising communicating therespiration rate to any of: a storage device, a display, and a remotedevice over a network.
 10. A system for determining a respiration ratefrom a video of a subject while breathing, the system comprising: astorage device; and a processor executing machine readable instructionsfor performing: receiving T time-sequential image frames of a video of asubject breathing, the video being captured of an area of the subjectwhere a signal corresponding to respiratory function can be registeredby at least one imaging channel of an imaging device used to capturethat video, the video comprising a first portion of at least 10 secondsof video for a total of N image frames, and a second portion of M imageframes, where N+M=T; for each image frame I_(t), where t=1 to N,determining a flow vector F_(t)(x,y) for each (x,y) pixel location;determining a correlated flow field V which captures how the individualflow vectors in each image frame are correlated to each other; for eachimage frame I_(t), where t=1 to M: determining a flow vector F_(t)(x,y)at each (x,y) pixel location; and determining a velocity vel_(t) for thet^(th) image frame; integrating the velocities over the image frames ofthe second portion of the video to obtain an integrated signalcorresponding to thoracoabdominal movement; determining a respirationrate for the subject from the integrated signal; and communicating therespiration rate to the storage device.
 11. The system of claim 10,wherein determining a flow vector F_(t) at each (x,y) pixel location inthe t^(th) image frame comprises:${F_{t}\left( {x,y} \right)} = \frac{{D_{t}\left( {x,y} \right)}{G_{t}\left( {x,y} \right)}}{{{G_{t}\left( {x,y} \right)}}^{2}}$where G_(t)(x,y) is a gradient determined at respective (x,y) pixellocations, and D_(t)(x,y) is a difference determined at respective (x,y)pixel locations.
 12. The system of claim 11, wherein determining agradient G_(t) at respective (x,y) pixel locations comprises:${G_{t}\left( {x,y} \right)} = \begin{bmatrix}{{I_{t}\left( {{x + 1},y} \right)} - {I_{t}\left( {x,y} \right)}} \\{{I_{t}\left( {x,{y + 1}} \right)} - {I_{t}\left( {x,y} \right)}}\end{bmatrix}$ where I_(t)(x,y) represents values at respective (x,y)pixel locations in the t^(th) image frame.
 13. The system of claim 11,wherein determining a difference D_(t) at respective (x,y) pixellocations comprises:D _(t)(x,y)=I _(t)(x,y)−I _(t−1)(x,y) where I_(t)(x,y) represents valuesat respective (x,y) pixel locations in the t^(th) image frame, andI_(t−1)(x,y) represents values at respective (x,y) pixel locations inthe (t−1)th image frame.
 14. The system of claim 10, wherein determininga correlated flow field V for the first portion of the video comprises:$V = {\underset{{U{({x,y})}} \in {W{({x,y})}}}{\arg \; \max}{\sum\limits_{t = 1}^{N}\left( {\sum\limits_{x,y}{{F_{t}\left( {x,y} \right)} \cdot {U\left( {x,y} \right)}}} \right)^{2}}}$where W(x,y) is a m×n×2 matrix with unit Frobenius norm, m is a numberof rows of F_(t), and n is a number of columns of F_(t).
 15. The systemof claim 10, wherein the velocity vel_(t) is a projection of F_(t) in adirection of the correlated flow field V for the t^(th) image frame, andcomprises:${vel}_{t} = {\sum\limits_{({x,y})}{\left( {{F_{t}\left( {x,y} \right)} \cdot V} \right).}}$16. The system of claim 10, wherein the respiration rate is determinedby a number of cycles in the integrated signal over the timeframe of thesecond portion of the video.
 17. The system of claim 10, wherein thevideo is a streaming video and the respiration rate is determined inreal-time.
 18. The system of claim 10, further comprising communicatingthe respiration rate to any of: a display device, and a remote deviceover a network.